// pages/goods_list/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // tab栏高亮的索引值
    current: 0,
    // 商品数据列表
    list: [],
    // 商品总条数，判断是否到最后一页
    total: 0,
    // 当前页面
    pagenum: 1,
    // 判断是否正在加载的开关
    isLoading: false,
    // 是否到了最后一页
    hasMore: false,
    // 页面入口带过来的查询关键字
    keyword: ""
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    // query是页面路径的参数
      this.setData({
        keyword: options.keyword
      })

			// 请求商品分类的数据
			this.getData();
  },

  // 点击tab的事件
  handleTab(event){
    const {index} = event.currentTarget.dataset;
    this.setData({
      current: index
    })
  },

  // 加载更多
  handleLoadMore(){
    this.getData();
  },

  // 请求商品列表
  getData(){
    // 如果开关是正在加载的状态，直接返回
    // 或者到了最后一页
    if(this.data.isLoading || this.data.hasMore) return;
    // 打开开关
    this.data.isLoading = true;
    
    // 故意加的两秒延时，真正的项目中不能这么加
    setTimeout(() => {
      wx.request({
        url: "https://api-hmugo-web.itheima.net/api/public/v1/goods/search",
        data: {
          query: this.data.keyword,
          pagenum: this.data.pagenum,
          pagesize: 10
        },
        success: (res) => {
          // goods是商品列表，total是总条数
          const {goods, total} = res.data.message;
          // this.list = goods;
          // 合并数据
          this.setData({
            list:  [...this.data.list, ...goods],
            total: total,
            pagenum: this.data.pagenum + 1,
            isLoading: false,
            hasMore: this.data.list.length >= total
          })
          
          // 当下拉刷新的时候手动关系。
          wx.stopPullDownRefresh();
        }
      })
    }, 1000);
  }
})